package com.qianfeng1.day8_wednesday.reflect.clazz;


import java.lang.reflect.Constructor;
import java.lang.reflect.Field;
import java.lang.reflect.Method;

/**
 * 作者：黎杭
 * 日期：2020/2/19
 */
public class Test {

    public static void main(String[] args) throws ClassNotFoundException {
        // 第一种获取Class类对象的方法

        // 是否还记得JDBC加载驱动的那个操作？
        Class clazz = Class.forName("java.lang.String");
        System.err.println(clazz);

        // 第二种：类.class
        Class clazz2 = String.class;
        System.err.println(clazz2);

        // 第三种：对象.getClass()

        String s = "你好";
        Class clazz3 = s.getClass();
        System.err.println(clazz3);

        // Class 能干什么事情？最能干的事情就是三个：1获取Field类，2获取Method类，3获取Constructor类
        Field[] fields = clazz3.getFields();// 获取成员

        Method[] methods = clazz3.getMethods();// 获取方法

        Constructor[] constructors = clazz3.getConstructors();// 获取构造方法
    }
}
